package ar.com.arkios.kfconsap.rfc;

import ar.com.arkios.kfconsap.excepciones.DataTypeInvalidConversionException;
import ar.com.arkios.kfconsap.excepciones.RFCNotFoundException;
import ar.com.arkios.kfconsap.excepciones.SapGeneralException;
import ar.com.arkios.kfconsap.excepciones.TableNotFoundException;
import ar.com.arkios.kfconsap.tablas.EnvaseDAO;
import java.io.IOException;

/**
 *
 * @author Ale
 * @version 1.01
 * Clase EnvaseReadRFC
 * Remote Call Function Z_RFC_READ_ENVASES      
 */
public class EnvaseReadRFC extends GenericRFC{

    /**
     * atributos: 
     * myEnvaseDAO tipo EnvaseDAO
     */
    private EnvaseDAO myEnvaseDAO;
    
    /**
     * Constructor que llama al constructor base, setea el nombre de la RFC e
     * informa si tiene filtros.
     * @throws java.io.IOException
     * @throws java.lang.Exception
     */
    public EnvaseReadRFC() throws SapGeneralException{
        super();
        super.setRfcName("Z_RFC_READ_ENVASES");
        super.setTieneParametrosRFC(false);
        try {
            super.createFunction();
        } catch (RFCNotFoundException ex) {
            throw new SapGeneralException(ex.getMessage());
        }
    }

    /**
     * Devuelve un objeto del tipo EnvaseDAO
     * @return myEnvaseDAO
     */
    public EnvaseDAO getMyEnvaseDAO() {
        return myEnvaseDAO;
    }

    /**
     * Override del metodo loadTables de GenericRFC
     */
    @Override
    public void loadTables() throws DataTypeInvalidConversionException, TableNotFoundException {
        this.myEnvaseDAO = new EnvaseDAO(super.getMyFunction());
    }

   
    

    
}
